package com.link2room.jetfire.service;

import com.link2room.jetfire.dto.param.base.ReservationParamDto;
import com.link2room.jetfire.dto.result.base.ReservationDto;
import com.link2room.jetfire.dto.result.base.ReservationPaymentDto;
import com.link2room.jetfire.entity.*;

import java.util.List;

/**
 * Created by sss on 2016/9/20.
 */
public interface IReservationService {
    ReservationBase saveReservationAll(ReservationBase reservationBase,
                                       List<ReservationPrice> reservationPriceList,
                                       List<GcOrderCoupon> gcOrderCouponList,
                                       ReservationAccount reservationAccount, List<ReservationPromotion> reservationPromotionList)throws Exception;

    String getNo(String noType)throws Exception;

    void saveReservationPayToPms(String lhotelGrouCode, String lhotelCode, String l2rNo, String paymentType, ReservationPaymentDto reservationPayment)throws Exception;

    ReservationDto createReservation(ReservationParamDto reservationParamDto)throws Exception;


    void saveReservationNmsSta(String lhotelGroupCode,
                               String lhotelCode,
                               String l2rNo,
                               String item,
                               String operSta,
                               String operType)throws Exception;

    void cancelReservation(ReservationBase reservationBase)throws Exception;
}
